home *** CD-ROM | disk | FTP | other *** search
/ Atari Mega Archive 1 / Atari Mega Archive - Volume 1.iso / lists / gem / l_0399 / 294 < prev    next >
Internet Message Format  |  1994-08-27  |  3KB

  1. From: walra%moacs11@nl.net (Waldi Ravens)
  2. Subject: ?????.SYS, first attempt
  3. Date: Sat, 04 Jun 1994 20:57:34 +0100
  4. Precedence: bulk
  5.  
  6. Here's a first attempt at a more formal description of a .SYS file
  7. containing configuration data which can be used by all GEM applications.
  8.  
  9. As far as the name is concerned, I think it should express that this file
  10. is related to GEM apllications. IMO the suggested DEFAULT.SYS does not
  11. fullfil that requirement. I'll give it another shot :) with APP.SYS
  12. (APPL.SYS) or APPDFLT.SYS (APPLDFLT.SYS).
  13.  
  14. The contents of ?????.SYS:
  15.  
  16. ?????.SYS may contain any character code from 1 to 255. Applications
  17. should not crash if NUL (ASCII 0) characters were accidently included
  18. in the file, they may however reject all information in the file in this
  19. case, without further notice. Alternatively the NUL character may be
  20. treated as an SP (ASCII 32) character.
  21.  
  22. ?????.SYS consists of an unlimited number of lines. All tokens are case
  23. insensitive. If a line contains a syntax error, then an application is
  24. free to reject that line completely without further notice.
  25. Syntax: ( <>=token, []=optional, /**/=comment )
  26.  
  27. <line>:
  28.         <empty line>
  29.         <config line>
  30.  
  31. <empty line>:
  32.         [<separators>] [<comment>] <terminator>
  33.  
  34. <config line>:
  35.         [<separators>] <config type> <separators> <definition> \
  36.                                 [ <separators> [<comment>] ] <terminator>
  37.  
  38. <terminator>:
  39.         CR      /* ASCII 13 */
  40.         LF      /* ASCII 10 */
  41.         CR LF
  42.  
  43. <separators>:
  44.         SP      /* ASCII 32 */
  45.         HT      /* ASCII  9 */
  46.  
  47. <comment>:
  48.         ';' [<any text>]        /* ASCII 59, semi-colon */
  49.         '#' [<any text>]        /* ASCII 35, hash mark  */
  50.  
  51. <any text>:
  52.         a sequence of one or more characters codes ranging
  53.         from 1 to 255, not including <terminator>
  54.  
  55. <config type>:
  56.         <alphanum> [<config type>]
  57.  
  58. <alphanum>:
  59.         a character code ranging from 48 to 57 ('0'-'9'),
  60.         from 65 to 90 ('A'-'Z') and from 97 to 122 ('a'-'z')
  61.  
  62. <definition>:
  63.         <def field> [<separators> <definition>]
  64.  
  65. <def field>:
  66.         a sequence of one or more characters codes ranging from
  67.         1 to 255, not including <seperators> and <terminator>.
  68.  
  69.         /* standardised fields _must_ only use alpanumeric characters */
  70.         /* fields for individual applications may contain other chars */
  71.  
  72.  
  73. The syntax for the <definition> of <config type> 'SHORTCUT' is:
  74.  
  75. <shortcut definition>:
  76.         <appl class> <seperators> <action> <separators> <extkey>
  77.  
  78. <appl class>:
  79.         *                 /* for all applications          */
  80.         * <class name>    /* for one class of applications */
  81.         <appl name>       /* for one specific application  */
  82.  
  83. <class name>:
  84.         <alphanum> [<class name>]
  85.  
  86. <appl name>:
  87.         a sequence of one or more characters codes ranging from 1 to 255,
  88.         not including ';' (semi-colon), <seperators> and <terminator>.
  89.  
  90. <extkey>:
  91.         <shift key>
  92.         <ctrl key>
  93.         <alt key>
  94.  
  95. <shift key>:
  96.         '|' <ctrl key>  /* maybe '\' and '/' should be allowed to      */
  97.         '|' <alt key>   /* indicate the left and right shift key resp. */
  98.  
  99. <ctrl key>:
  100.         '^' <key>
  101.  
  102. <alt key>
  103.         '@' <key>
  104.  
  105. <key>
  106.         /* cannot be specified yet */
  107.  
  108.  
  109. Regards,
  110.            Waldi  (walra%moacs11@nl.net)
  111.